package com.yough.api.framework.constant;

import com.yough.api.framework.bean.ApiDocumentBean;
import com.yough.api.framework.bean.DocumentBeanDefinition;

import java.util.ArrayList;
import java.util.List;
import java.util.concurrent.ConcurrentHashMap;

/**
 * @Description 文档对象相关的常量类
 * @Author yough
 * @Version V1.0.0
 * @Since 1.0
 * @Date 2021/1/8
 */
public class DocumentConstants {

    /**
     * 文档对象实体bean集合
     * key = sysNo + 类的全限定名
     */
    public static ConcurrentHashMap<String, DocumentBeanDefinition> documentBeanDefinitionMap =
            new ConcurrentHashMap<>();

    /**
     * 对外document文档映射的方法集合
     * key = sysNo + 接口方法名称
     */
    public static ConcurrentHashMap<String, ApiDocumentBean> apiDocumentBeanMap =
            new ConcurrentHashMap<>();

    public static List<String> javaLangType = new ArrayList<String>();

    static {
        javaLangType.add("String");
        javaLangType.add("Integer");
        javaLangType.add("int");
        javaLangType.add("Long");
        javaLangType.add("long");
        javaLangType.add("Double");
        javaLangType.add("double");
        javaLangType.add("Float");
        javaLangType.add("float");
        javaLangType.add("Character");
        javaLangType.add("char");
        javaLangType.add("Short");
        javaLangType.add("short");
        javaLangType.add("Boolean");
        javaLangType.add("boolean");
        javaLangType.add("Byte");
        javaLangType.add("byte");
        javaLangType.add("Object");
        javaLangType.add("Date");
    }
}
